*{
    margin: 0;
    padding: 0;
}
body{
    /* 方便演示，居中显示 */
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #2c3e50;
}
.container{
    /* 弹性布局 */
    display: flex;
}
.button{
    /* 相对定位 */
    position: relative;
    width: 160px;
    height: 50px;
    margin: 0 15px;
    cursor: pointer;
}
.shape{
    /* 取消填充 */
    fill: none;
    /* 定义一条线 */
    stroke: #009ffd;
    /* 线的厚度 */
    stroke-width: 6;
    /* 设置虚线：虚线长度 间距 */
    stroke-dasharray: 100 400;
    /* 虚线偏移量 */
    stroke-dashoffset: -240;
    /* 过渡效果 */
    transition: 1s ease;
}
.text{
    /* 绝对定位 居中 */
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    color: #fff;
    letter-spacing: 2px;
}
/* 鼠标悬停时改变线条样式 */
.button:hover .shape{
    stroke: #06e6a0;
    stroke-width: 3;
    stroke-dasharray: 50 0;
    stroke-dashoffset: 0;
}